Wie bereits im vorherigen Bericht beginnen wir mit einem ARP-Scan, um die IP-Adresse des Ziels im lokalen Netzwerk zu ermitteln.
Wir haben die IP-Adresse `192.168.2.144` des Ziels gefunden und fügen sie der `/etc/hosts`-Datei hinzu, um die Namensauflösung zu vereinfachen.
Nun führen wir einen Nmap-Scan durch, um offene Ports und laufende Dienste auf dem Zielsystem zu identifizieren.
Die Ergebnisse zeigen, dass SSH (Port 22), HTTP (Port 80) und RPCbind (Port 111) offen sind. Port 44487 scheint ein Status-Port für RPC zu sein. Wir führen einen vollständigen Nmap-Scan durch, um detailliertere Informationen zu erhalten.
Der vollständige Nmap-Scan liefert uns SSH-Hostkeys, den HTTP-Titel "Welcome to my website" und Informationen über die RPC-Dienste. Diese Informationen sind nützlich für die weitere Analyse.
Wir verwenden Nikto, um den Webserver auf Schwachstellen zu scannen.
Nikto findet Directory Listing in `/css/` und `/img/`, was bedeutet, dass wir den Inhalt dieser Verzeichnisse einsehen können. Außerdem wird eine `package.json`-Datei gefunden, die möglicherweise sensitive Informationen enthält.
Wir verwenden Gobuster, um weitere Verzeichnisse und Dateien zu finden.
Gobuster bestätigt die Existenz von `index.html`, `img`, `css`, `manual`, `js`, `javascript`, `vendor`, `package.json`, `LICENSE` und `joomla`. Besonders interessant ist das Joomla-Verzeichnis, da es sich um ein Content Management System handelt, das oft Schwachstellen aufweist.
Wir sehen uns die `package.json`-Datei genauer an, da sie möglicherweise sensitive Informationen wie Versionsnummern und Abhängigkeiten enthält.
Die `package.json`-Datei zeigt, dass die Webseite das "New Age" Theme von Start Bootstrap verwendet. Außerdem werden verschiedene Abhängigkeiten und Entwickler-Tools aufgelistet. Dies kann uns helfen, gezielte Exploits zu finden, falls bekannte Schwachstellen in diesen Versionen vorhanden sind.
Wir versuchen, SSH-Benutzernamen auf dem Zielsystem aufzuzählen, um mögliche Anmeldeinformationen für den SSH-Dienst zu finden.
Wir verwenden das Metasploit-Modul `auxiliary/scanner/ssh/ssh_enumusers`, um Benutzernamen aufzuzählen.
Das Metasploit-Modul hat mehrere Benutzernamen gefunden, darunter `tim`. Dieser Benutzername ist interessant, da er auf der Webseite nicht erwähnt wurde.
Wir führen Joomscan aus, um das Joomla-System auf bekannte Schwachstellen zu untersuchen.
Joomscan findet keine Joomla-Version und keine Core-Schwachstellen. Allerdings wird die Admin-Seite unter `http://192.168.2.144/joomla/administrator/` gefunden. Dies ist ein wichtiger Hinweis. Wir suchen nach der Joomla version.
Wir schauen, welche Joomla Versionen verbreitet sind.
Wir suchen im Internet nach weiteren Inforationen zu der Webseite und dem cms.
Wir schauen im Internet nach Joomla Schwachstellen.
Hier ein Brute Force Angriff.
Hier ein Reverse Shell.
Wir führen Joomscan noch einmal durch.
Joomscan findet diesmal die Joomla Version 3.6.0. Es werden auch einige Schwachstellen gefunden.
Wir versuchen uns mit einem Brute Force Angriff und der gefundenen Joomla Version einzuloggen
Nach dem wir nun das Passwort haben melden wir uns an
Nun wollen wir aus Joomla ein Exploit bauen.
Das funktioniert aber nicht, jetzt bauen wir einen Reverse Shell.
Aber auch das Funktioniert nicht.
Aha ein gelbes Symbol gefunden, und wieder einen Reverse Shell.
Reverse Shell erfolgreich !
Nachdem wir eine Shell als `www-data` erhalten haben, versuchen wir, unsere Privilegien zu erhöhen. Wir suchen nach SUID-Binärdateien.
Interessanterweise ist `sudo` vorhanden und hat die Berechtigung `-rwsrwxrwx`, was bedeutet, dass jeder Benutzer `sudo` mit Root-Rechten ausführen kann. Dies ist höchst ungewöhnlich und deutet auf eine Fehlkonfiguration hin.
Wir überprüfen, ob Capabilities gesetzt sind.
Wir suchen nach der /etc/passwd.
Die ````/etc/passwd``` ist nicht beschreibbar.
Hier ist die Ausgabe des Eintrags.
Wir schauen in die home directory.
Wir checken nun die Rechte.
Wir schauen welche html Dokumente gibt.
Und wollen die crontab einsehen.
Wir schauen was unter opt ist.
Die scripts haben Leserechte.
Eine Interessante Datei gefunden, nun geben wir sie aus.
Hier sehen wir ein Passwort und ein Username, die nutzen wir mal aus.
Privilege EscalationWir versuchen uns nun bei tim anzumelden, das klappt auch.
Nun wollen wir schauen was tim alles mit Sudo machen darf.
Tim darf sudo ausführen